package cz.tpj.database.bod_zaujmu;

import static org.junit.Assert.*;

import org.junit.Test;

import cz.tpj.database.obrazky.Obrazok;
import cz.tpj.database.typ_zaujimavost.Typ_zaujimavost;
import cz.tpj.util.ErrorDatabase;

public class Bod_zaujmuTest {
	@Test
	public void testId() {
		Typ_zaujimavost o2 = new Typ_zaujimavost();
		Obrazok o3 = new Obrazok();
		try {
			Bod_zaujmu o1 = new Bod_zaujmu("ID1", "point", "short label", "long label", "20.2.1999", "2.3.2000", "Opava", "John Black", o2, o3);
			
			o1.setId("ID2");
			assertEquals("ID2", o1.getId());
		} catch (ErrorDatabase e) {
			e.printStackTrace();
		}
	}

	@Test
	public void testNazov() {
		Typ_zaujimavost o2 = new Typ_zaujimavost();
		Obrazok o3 = new Obrazok();
		try {
			Bod_zaujmu o1 = new Bod_zaujmu("ID1", "point", "short label", "long label", "20.2.1999", "2.3.2000", "Opava", "John Black", o2, o3);
			
			o1.setNazov("name");
			assertEquals("name", o1.getNazov());
		} catch (ErrorDatabase e) {
			e.printStackTrace();
		}		
	}

	@Test
	public void testKratkyPopis() {
		Typ_zaujimavost o2 = new Typ_zaujimavost();
		Obrazok o3 = new Obrazok();
		try {
			Bod_zaujmu o1 = new Bod_zaujmu("ID1", "point", "short label", "long label", "20.2.1999", "2.3.2000", "Opava", "John Black", o2, o3);
			
			o1.setKratkyPopis("very short label");
			assertEquals("very short label", o1.getKratkyPopis());
		} catch (ErrorDatabase e) {
			e.printStackTrace();
		}		
	}

	@Test
	public void testDlhyPopis() {
		Typ_zaujimavost o2 = new Typ_zaujimavost();
		Obrazok o3 = new Obrazok();
		try {
			Bod_zaujmu o1 = new Bod_zaujmu("ID1", "point", "short label", "long label", "20.2.1999", "2.3.2000", "Opava", "John Black", o2, o3);
			
			o1.setDlhyPopis("very long label");
			assertEquals("very long label", o1.getDlhyPopis());
		} catch (ErrorDatabase e) {
			e.printStackTrace();
		}		
	}

	@Test
	public void testGps() {
		Typ_zaujimavost o2 = new Typ_zaujimavost();
		Obrazok o3 = new Obrazok();
		try {
			Bod_zaujmu o1 = new Bod_zaujmu("ID1", "point", "short label", "long label", "20.2.1999", "2.3.2000", "Opava", "John Black", o2, o3);
			
			o1.setGps("0.0.0");
			assertEquals("0.0.0", o1.getGps());
		} catch (ErrorDatabase e) {
			e.printStackTrace();
		}		
	}

	@Test
	public void testPridane() {
		Typ_zaujimavost o2 = new Typ_zaujimavost();
		Obrazok o3 = new Obrazok();
		try {
			Bod_zaujmu o1 = new Bod_zaujmu("ID1", "point", "short label", "long label", "20.2.1999", "2.3.2000", "Opava", "John Black", o2, o3);
			
			o1.setPridane("1.1.2000");
			assertEquals("1.1.2000", o1.getPridane());
		} catch (ErrorDatabase e) {
			e.printStackTrace();
		}		
	}

	@Test
	public void testNaposledyEditovane() {
		Typ_zaujimavost o2 = new Typ_zaujimavost();
		Obrazok o3 = new Obrazok();
		try {
			Bod_zaujmu o1 = new Bod_zaujmu("ID1", "point", "short label", "long label", "20.2.1999", "2.3.2000", "Opava", "John Black", o2, o3);
			
			o1.setNaposledyEditovane("1.1.2000");
			assertEquals("1.1.2000", o1.getNaposledyEditovane());
		} catch (ErrorDatabase e) {
			e.printStackTrace();
		}
	}

	@Test
	public void testMesto() {
		Typ_zaujimavost o2 = new Typ_zaujimavost();
		Obrazok o3 = new Obrazok();
		try {
			Bod_zaujmu o1 = new Bod_zaujmu("ID1", "point", "short label", "long label", "20.2.1999", "2.3.2000", "Opava", "John Black", o2, o3);
			
			o1.setNaposledyEditovane("1.1.2000");
			assertEquals("1.1.2000", o1.getNaposledyEditovane());
		} catch (ErrorDatabase e) {
			e.printStackTrace();
		}
	}

	@Test
	public void testZamestnanec() {
		Typ_zaujimavost o2 = new Typ_zaujimavost();
		Obrazok o3 = new Obrazok();
		try {
			Bod_zaujmu o1 = new Bod_zaujmu("ID1", "point", "short label", "long label", "20.2.1999", "2.3.2000", "Opava", "John Black", o2, o3);
			
			o1.setZamestnanec("Peter Pan");
			assertEquals("Peter Pan", o1.getZamestnanec());
		} catch (ErrorDatabase e) {
			e.printStackTrace();
		}		
	}

	@Test
	public void testTypyZaujimavosti() {
		Typ_zaujimavost o2 = new Typ_zaujimavost();
		Typ_zaujimavost o4 = new Typ_zaujimavost();
		Obrazok o3 = new Obrazok();
		try {
			Bod_zaujmu o1 = new Bod_zaujmu("ID1", "point", "short label", "long label", "20.2.1999", "2.3.2000", "Opava", "John Black", o2, o3);
			
			o1.setTypyZaujimavosti(o4);
			assertEquals(o4, o1.getTypyZaujimavosti());
		} catch (ErrorDatabase e) {
			e.printStackTrace();
		}		
	}

	@Test
	public void testObrazky() {
		Typ_zaujimavost o2 = new Typ_zaujimavost();
		Obrazok o3 = new Obrazok();
		Obrazok o4 = new Obrazok();
		try {
			Bod_zaujmu o1 = new Bod_zaujmu("ID1", "point", "short label", "long label", "20.2.1999", "2.3.2000", "Opava", "John Black", o2, o3);
			
			o1.setObrazky(o4);
			assertEquals(o4, o1.getObrazky());
		} catch (ErrorDatabase e) {
			e.printStackTrace();
		}		
	}
}
